<?php
session_start();

require_once "constantes.php";
require_once "classes/classe_usuario_base.php";
require_once "classes/classe_periodo_base.php";
require_once "classes/classe_gasto_base.php";
require_once "classes/classe_usuario.php";
require_once "classes/classe_periodo.php";
require_once "classes/classe_gasto.php";


$acao = $_POST['acao'];
$mensagemErro = "";
$mensagemSucesso = "";


$logado = false;
$mostrarLogin             = true;
$mostrarTelaCadastro      = false;
$mostrarTelaGastos        = false;
$mostrarTelaListaDados    = false;
$mostrarTelaEditarUsuario = false;
$mostrarTelaTrocarSenha   = false;


$baseUsuario = new BaseUsuario();
$usuarioCorrente = new Usuario();

#VERIFICA SE O USUARIO ESTA LOGADO.
if( isset($_SESSION["nome_usuario_sessao"]) ){
$logado = true;
$usuarioCorrente = $baseUsuario->findUsuarioByname($_SESSION["nome_usuario_sessao"]);
}




# ACAO CADASTRAR USUARIO.
if($acao == ACAO_CADASTRAR_USUARIO){

$nomeUsuario  = $_POST['nomeUsuario'];
$senhaUsuario = $_POST['senhaUsuario'];
$emailUsuario = $_POST['emailUsuario'];
$pegunta      = $_POST['pergunta'];
$resposta     = $_POST['resposta'];

$mostrarLogin = false;
$mostrarTelaCadastro = true;
$mostrarTelaCadastro = false;
$mostrarTelaEditarUsuario = false;
$mostrarTelaTrocarSenha = false;

 $mensagemErro = "";

if($_POST['nomeUsuario'] == "")
    $mensagemErro = "Informe Nome";
else if($_POST['senhaUsuario'] == "")
    $mensagemErro = "Informe Senha";
else if($emailUsuario == "")
    $mensagemErro = "Informe Email!";
else if($pegunta == "")
    $mensagemErro = "Informe Pergunta!";
else if($resposta == "")
    $mensagemErro = "Informe Senha!";
else if($baseUsuario->usuarioExiste($nomeUsuario))
   $mensagemErro = "Ja Existe um usuario cadastrado com esse nome, por favor informe um nome diferente.";


if($mensagemErro == "") {
    
    $usuario = new Usuario();
    $usuario->nome  = $nomeUsuario;
    $usuario->senha = $senhaUsuario;
    $usuario->habilitarTransacao = $_POST['habilitarTransacao'];
    $usuario->email    = $emailUsuario;
    $usuario->pergunta = $pegunta;
    $usuario->resposta = $resposta;

    if($baseUsuario->cadastrarUsuario($usuario)){
        $mensagemSucesso = "Usuario cadastrado com sucesso!";
        $mensagemSucesso = "\nUm e-mail foi enviado para você com o código de acesso.";
     $mostrarLogin = true;
     $mostrarTelaCadastro = false;
    }
    else{
        $mensagemErro = "Erro ao tentar cadastrar usuário!";
    }
}

$acao = "";
$mostrarTelaListaDados = false;
} // fim da opcao ACAO_CADASTRAR_USUARIO.
#___________________________________________________________________________

# ACAO LOGIN.
else if($acao == ACAO_LOGIN){

$mostrarTelaListaDados = false;
$nomeUsuario  = addslashes($_POST['nomeUsuario']);
$senhaUsuario = addslashes($_POST['senhaUsuario']);

if($_POST['nomeUsuario'] == ""){
    $mensagemErro = "Informe Nome";
    $mostrarLogin = true;
}
else if($_POST['senhaUsuario'] == ""){
    $mensagemErro = "Informe Senha";
    $mostrarLogin = true;
}

else if($baseUsuario->usuarioCadastrado($nomeUsuario,$senhaUsuario)){

$logado = true;
$_SESSION["nome_usuario_sessao"]  = $_POST['nomeUsuario'] ;
$_SESSION["senha_usuario_sessao"] = $_POST['senhaUsuario'] ;
$mostrarLogin = false;
$mostrarTelaListaDados = true;

$usuarioCorrente = $baseUsuario->findUsuarioByname($_POST['nomeUsuario']);
}
else{
    $mensagemErro = "Usuario nao cadastrado no Sistema!";
    $mostrarLogin = true;
}

$acao = "";
}
#___________________________________________________________________________


# ACAO SAIR.
else if($_GET['acao'] == ACAO_SAIR_SISTEMA){

session_destroy();

$mostrarLogin = true;
$mostrarTelaCadastro = false;
$mostrarTelaListaDados = false;
$mostrarTelaTrocarSenha = false;
$acao = "";
$usuarioCorrente = null;
$logado = false;
}


#___________________________________________________________________________



else if($_GET['acao'] == ACAO_LISTAR_DADOS){


if($logado == false){
    $mensagemErro = "Usuario Nao logado no sistema!";
    $mostrarLogin = true;
    $mostrarTelaCadastro = false;
}
else{
 $usuarioCorrente = $baseUsuario->findUsuarioByname($_SESSION["nome_usuario_sessao"]);
$mostrarTelaListaDados = true;
$mostrarLogin = false;
$mostrarTelaCadastro = false;
$mostrarTelaTrocarSenha = false;
}
}
#___________________________________________________________________________



# ACAO VIEW EDITAR USUARIO.
else if ($_GET['acao'] == ACAO_VIEW_EDITAR_USUARIO){

if($logado == false){
    $mensagemErro = "Usuario Nao logado no sistema!";
    $mostrarLogin = true;
    $mostrarTelaCadastro = false;
}
else{
$mostrarLogin = false;
$mostrarTelaCadastro = false;
$mostrarTelaCadastro = false;
$mostrarTelaEditarUsuario = true;
$mostrarTelaTrocarSenha = false;
}

}
#___________________________________________________________________________



# ACAO EDITAR USUARIO.
else if ($_POST['acao'] == ACAO_EDITAR_USUARIO){


if($logado == false){

    $mensagemErro = "Usuario Nao logado no sistema!";
    $mostrarLogin = true;
    $mostrarTelaCadastro = false;
}
else{
  $mostrarLogin = false;
  $mostrarTelaCadastro = false;
  $mostrarTelaEditarUsuario = true;
  $mostrarTelaTrocarSenha = false;


$nomeUsuario  = addslashes($_POST['nomeUsuarioEditar']);
$emailUsuario = addslashes($_POST['emailUsuarioEditar']);
$pegunta      = addslashes($_POST['perguntaEditar']);
$resposta     = addslashes($_POST['respostaEditar']);
$habilitarTransacao = addslashes($_POST['habilitarTransacaoEditar']);
$gerarCodigoAcesso = $_POST['gerarCodigoAcesso'];


$u = new Usuario();
$u->id = $usuarioCorrente->id;
$u->nome = $nomeUsuario;
$u->email = $emailUsuario;
$u->pergunta = $pegunta;
$u->resposta = $resposta;
$u->habilitarTransacao = $habilitarTransacao;
$u->codigoAcesso = $usuarioCorrente->codigoAcesso;

if($gerarCodigoAcesso == "sim"){
$u->codigoAcesso = rand(100000,999999);
}

if($baseUsuario->editarUsuario($u) == true){
    $mensagemSucesso = "Alteracao realizada com sucesso!";
    $usuarioCorrente = $baseUsuario->findUsuarioByname($_SESSION["nome_usuario_sessao"]);
    $_POST['acao'] = ACAO_VIEW_EDITAR_USUARIO;
}
else
   $mensagemErro = "Erro ao tentar editar perfil do usuário";

}

}
#___________________________________________________________________________



# ACAO VIEW EDITAR SENHA.
else if ($_GET['acao'] == ACAO_VIEW_TROCAR_SENHA){

if($logado == false){
    $mensagemErro = "Usuario Nao logado no sistema!";
    $mostrarLogin = true;
    $mostrarTelaCadastro = false;
}
else{
$mostrarLogin = false;
$mostrarTelaCadastro = false;
$mostrarTelaCadastro = false;
$mostrarTelaEditarUsuario = false;
$mostrarTelaTrocarSenha = true;
}

}
#___________________________________________________________________________


# ACAO TROCAR SENHA.
else if ($_POST['acao'] == ACAO_TROCAR_SENHA){


if($logado == false){

    $mensagemErro = "Usuario Nao logado no sistema!";
    $mostrarLogin = true;
    $mostrarTelaCadastro = false;
}
else{
  $mostrarLogin = false;
  $mostrarTelaCadastro = false;
  $mostrarTelaEditarUsuario = false;
  $mostrarTelaTrocarSenha = true;
  $mostrarTelaListaDados = false;

$senhaAntiga = $_POST['senhaAntiga'];
$senhaNova1  = $_POST['senhaNova1'];
$senhaNova2  = $_POST['senhaNova2'];


if( $senhaAntiga == null || $senhaNova1 == null || $senhaNova2 == null ||
        $senhaAntiga == "" || $senhaNova1 == "" || $senhaNova2 == "" ){
    $mensagemErro = "Digite todos os campos";
}
else if($senhaNova1 != $senhaNova2){
    $mensagemErro = "Digite a mesma senha para os dois campos de nova senha.";
}
else{

$u = new Usuario();
$u->id = $usuarioCorrente->id;
$u->senha = $senhaNova1;

if($usuarioCorrente->senha == $senhaAntiga){

if($baseUsuario->editarSenha($u) == true){
    $mensagemSucesso = "Alteracao realizada com sucesso!";
    $usuarioCorrente = $baseUsuario->findUsuarioByname($_SESSION["nome_usuario_sessao"]);
    $_POST['acao'] = ACAO_VIEW_TROCAR_SENHA;
}
else{
   $mensagemErro = "Erro ao tentar trocar senha";
}
}
else{
    $mensagemErro = "Senha antiga nao confere!";
}
}
}

}
#___________________________________________________________________________


?>



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />

  <link type="text/css" rel="stylesheet"   href="css/principal.css" />
  <link type="text/css" rel="stylesheet"   href="css/menu.css"      />

  <script type="text/javascript" src="js/jquery-1.3.2.js"></script>
  <script type="text/javascript" src="js/ui.core.js">     </script>
  <script type="text/javascript" src="js/ui.draggable.js"></script>
  <script type="text/javascript" src="js/ui.resizable.js"></script>
  <script type="text/javascript" src="js/ui.dialog.js"   ></script>
  <script type="text/javascript" src="js/util_js.js"     ></script>
  <script type="text/javascript" src="js/principal.js"     ></script>
  <script type="text/javascript" src="js/formularios.js"   ></script>

  

<title>WebService</title>
</head>
<body>

<script language="JavaScript">
jQuery(document).ready(function(){


<?php if($mensagemErro != "" ){ ?>

    jQuery("#div_mensagemErro").slideDown();

<?php } else{ ?>
    jQuery("#div_mensagemErro").slideUp();
<?php } if($mensagemSucesso != "" ){ ?>
    jQuery("#div_mensagemSucesso").slideDown();
<?php } else {?>
    jQuery("#div_mensagemSucesso").slideUp();
<?php } if($mostrarLogin == true){?>
    jQuery("#div_login").slideDown();
<?php } else if($logado == true){ ?>
jQuery("#div_login").slideUp();
<?php } else{ ?>
    jQuery("#div_login").slideUp();
<?php } if($mostrarTelaCadastro){?>
    jQuery("#div_cadastroUsuario").slideDown();
<?php } else{ ?>
    jQuery("#div_cadastroUsuario").slideUp();
<?php } if($logado == true){ ?>
    jQuery("#div_sair").slideDown();
<?php } else{ ?>
    jQuery("#div_sair").slideUp();
<?php } if($mostrarTelaListaDados == true){?>
    jQuery("#div_listaDados").slideDown();
<?php } else{?>
    jQuery("#div_listaDados").slideUp();
<?php } if($mostrarTelaEditarUsuario == true){?>
    jQuery("#div_editarUsuario").slideDown();
<?php } else{?>
    jQuery("#div_editarUsuario").slideUp();
<?php } if($mostrarTelaTrocarSenha == true){?>
     jQuery("#div_trocarSenha").slideDown();
<?php } else{?>
    jQuery("#div_trocarSenha").slideUp();
<?php }?>





});

</script>


<style type="text/css">

</style>


<!--DIV PRINCIPAL-->
<div id="div_principal">


    <!--DIV SAIR DO SISTEMA-->
    <?php if(isset($_SESSION["nome_usuario_sessao"])){?>
    <div id="div_sair">
        <p><a id="botao_sair" href="index.php?acao=<?=ACAO_SAIR_SISTEMA?>" >Sair</a></p>
    </div>
    <?php }?>


    
<!--DIV MENU-->
<div id="menu">
<ul id="menuList">
<?php if( $logado == false ){?>
<li id="itemLogin" ><a href="#">Login </a></li>
<li id="itemCadastroUsuario" ><a href="#" >Cadastrar-se </a></li>
<li id="itemEsqueceuSenha" ><a href="#" >Esqueceu sua Senha? </a></li>
<?php }?>

<?php if( $logado == true ){?>
<li id="itemListaDados"   ><a href="index.php?acao=<?=ACAO_LISTAR_DADOS?>" >Gastos/Periodos </a></li>
<li id="itemEditarPerfil" ><a href="index.php?acao=<?=ACAO_VIEW_EDITAR_USUARIO?>" >Editar Perfil </a></li>
<li id="itemTrocarSenha" ><a href="index.php?acao=<?=ACAO_VIEW_TROCAR_SENHA?>" >Trocar Senha </a></li>
<?php }?>
</ul>
</div>


<!--DIV MENSAGEM DE ERRO-->
<div id="div_mensagemErro">
    <h3><?=$mensagemErro?></h3>
</div>

<!--DIV MENSAGEM DE SUCESSO-->
<div id="div_mensagemSucesso">
    <h3><?=$mensagemSucesso?></h3>
</div>





<!--TELA LOGIN-->
<div id="div_login">
<h2><span id="titulo2">Faca o login</span></h2>
<form name="formLogin" id="formLogin" action="index.php" method="POST" onsubmit="return Formulario.trataFormLogin();" >
<input  type="hidden" name="acao" value="<?=ACAO_LOGIN?>" />
<table id="tabela_login">
<tr>
 <td>Nome:</td>
 <td><input type="text" name="nomeUsuario" id="nomeUsuarioLogin" /></td>
</tr>
 <tr>
 <td>Senha:</td>
 <td><input type="password" name="senhaUsuario" id="senhaUsuarioLogin" /></td>
</tr>
</table>
<p class="botao" >
    <input type="submit" value="Entrar" />
    <input type="button" onclick="Formulario.limparFormLogin();" value="limpar" />
</p>
</form>
</div>




<!--TELA CADASTRO DE USUARIO-->
<div id="div_cadastroUsuario">
<h2>Cadastro de Usuario WebService</h2>
<h4><span class="camposObrigatorios">*</span>Campos Obrigatorios</h4>
<form name="formCadastroUsuario" id="formCadastroUsuario" action="index.php" method="POST" onsubmit="return Formulario.trataFormCadastroUsuario();" >
<input  type="hidden" name="acao" value="<?=ACAO_CADASTRAR_USUARIO?>" />
<table id="tabela_cadastro">
<tr>
    <td><span class="camposObrigatorios">*</span>Nome:</td>
 <td><input type="text" name="nomeUsuario" value="" id="nomeUsuario" /></td>
</tr>
 <tr>
 <td><span class="camposObrigatorios">*</span>Senha:</td>
 <td><input type="password" maxlength="10" name="senhaUsuario" value="" id="senhaUsuario" /></td>
</tr>
 <tr>
 <td><span class="camposObrigatorios">*</span>Email:</td>
 <td><input type="text" name="emailUsuario" value="" id="emailUsuario"  size="40" /></td>
</tr>
 <tr>
 <td><span class="camposObrigatorios">*</span>Pergunta para resgatar Senha:</td>
 <td><input type="text" name="pergunta" value="" id="pergunta" size="60" /></td>
</tr>
 <tr>
<td><span class="camposObrigatorios">*</span>Resposta:</td>
 <td><input type="text" name="resposta" value="" id="resposta" size="60" /></td>
</tr>
 <tr>
 <td><span class="camposObrigatorios">*</span>Habilitar Transacao?</td>
 <td>
     Sim <input type="radio" name="habilitarTransacao" value="sim" checked />
     Nao <input type="radio" name="habilitarTransacao" value="nao" />
 </td>
</tr>
</table>
<p class="botao" >
     <input type="submit"  value="Cadastrar" />
    <input type="button" onclick="Formulario.limparFormCadastroUsuario();" value="limpar" />
</p>
</form>
</div>





<!--TELA EDICAO USUARIO-->
<div id="div_editarUsuario">
<h2>Edicao de Usuario WebService</h2>
<h4><span class="camposObrigatorios">*</span>Campos Obrigatorios</h4>
<form name="formEditarUsuario" id="formEditarUsuario" action="index.php" method="POST" onsubmit="return Formulario.trataFormEditarUsuario();" >
<input  type="hidden" name="acao" value="<?=ACAO_EDITAR_USUARIO?>" />
<table id="tabela_cadastro">

 <tr>
 <td>Codigo de Acesso:</td>
 <td><?=$usuarioCorrente->codigoAcesso?></td>
</tr>
<tr>
    <td><span class="camposObrigatorios">*</span>Nome:</td>
 <td><input type="text" name="nomeUsuarioEditar" value="<?=$usuarioCorrente->nome?>" id="nomeUsuarioEditar" /></td>
</tr>
 <tr>
 <td><span class="camposObrigatorios">*</span>Email:</td>
 <td><input type="text" name="emailUsuarioEditar" value="<?=$usuarioCorrente->email?>" id="emailUsuarioEditar"  size="40" /></td>
</tr>
 <tr>
 <td><span class="camposObrigatorios">*</span>Pergunta para resgatar Senha:</td>
 <td><input type="text" name="perguntaEditar" value="<?=$usuarioCorrente->pergunta?>" id="perguntaEditar" size="60" /></td>
</tr>
 <tr>
<td><span class="camposObrigatorios">*</span>Resposta:</td>
 <td><input type="text" name="respostaEditar" value="<?=$usuarioCorrente->resposta?>" id="respostaEditar" size="60" /></td>
</tr>
 <tr>
 <td><span class="camposObrigatorios">*</span>Habilitar Transacao?</td>
 <td>
     Sim <input type="radio" name="habilitarTransacaoEditar" value="sim"  <?echo ($usuarioCorrente->habilitarTransacao == "sim" ? "checked" : "" )?> />
     Nao <input type="radio" name="habilitarTransacaoEditar" value="nao"  <?echo ($usuarioCorrente->habilitarTransacao == "nao" ? "checked" : "" )?> />
 </td>
</tr>
<tr>
 <td><span class="camposObrigatorios">*</span>Gerar novo codigo de acesso?</td>
 <td>
     Sim <input type="radio" name="gerarCodigoAcesso" value="sim"   />
     Nao <input type="radio" name="gerarCodigoAcesso" value="nao" checked />
 </td>
</tr>
</table>
<p class="botao" >
    <input type="submit"  value="Cadastrar" />
    <input type="button" onclick="Formulario.limparFormEditrarUsuario();" value="limpar" />
</p>
</form>
</div>





<!--TELA LISTA DE GASTOS-->
<div id="div_listaDados">

    <?php
    $baseGasto = new BaseGasto();
    $colecaoGastos = $baseGasto->findAllGastosByCodigoUsuario($usuarioCorrente->id,true);
    ?>

    <h2>Lista de Gastos (<?php echo count($colecaoGastos)?> encontrados)</h2>
    <?php if( count($colecaoGastos) > 0 ) {?>

    <table id="tabela_gastos">
        <tr style="font-weight: bold">
            <td>Nome</td>
            <td>Valor</td>
            <td>Ano</td>
            <td>Mes</td>
            <td>Tipo</td>
            <td>Descricao</td>
            <td>Data Cadastro</td>
        </tr>
    <?php
    
    foreach($colecaoGastos as $gasto){
    ?>
        <tr>
            <td><?=$gasto->nome?></td>
            <td><?=$gasto->valor?></td>
            <td><?=$gasto->ano?></td>
            <td><?=$gasto->mes?></td>
            <td><?=$gasto->tipo?></td>
            <td><?=$gasto->descricao?></td>
            <td><?=$gasto->datacadastro?></td>
            
        </tr>
    <?php }?>
    </table>
    <?php }?>
</div>


<!--TELA TROCAR SENHA-->
<div id="div_trocarSenha" >

<h2>Trocar Senha</h2>
<h4><span class="camposObrigatorios">*</span>Campos Obrigatorios</h4>
<form name="formTrocarSenha" id="formTrocarSenha" action="index.php" method="POST" onsubmit="return Formulario.trataFormTrocarSenhaaa();" >
<input  type="hidden" name="acao" value="<?=ACAO_TROCAR_SENHA?>" />
<table id="tabela_cadastro">

    <input type="hidden" name="idUsuario" value="<?=$usuarioCorrente->id?>"  />
    
<tr>
 <td><span class="camposObrigatorios">*</span>Senha antiga:</td>
 <td><input type="password"  name="senhaAntiga" id="senhaAntiga" size="10"  maxlength="10" /></td>
</tr>
 <tr>
 <td><span class="camposObrigatorios">*</span>Senha nova:</td>
 <td><input type="password" name="senhaNova1" id="senhaNova1" size="10" maxlength="10" /></td>
</tr>
 <tr>
 <td><span class="camposObrigatorios">*</span>Repita Senha nova:</td>
 <td><input type="password" name="senhaNova2" id="senhaNova2"  size="10" maxlength="10" /></td>
</tr>
</table>
<p class="botao" >
    <input type="submit"  value="Trocar" />
    <input type="button" onclick="Formulario.limparFormTrocarSenha();" value="limpar" />
</p>
</form>
</div>




    
</body>
</html>